package com.qfedu.yanglao20admin.visit.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.qfedu.yanglao20.entity.visit.ReturnVisit;
import com.qfedu.yanglao20admin.visit.param.ReturnVisitParam;
import com.qfedu.yanglao20admin.visit.param.VisitFlagParam;
import com.qfedu.yanglao20admin.visit.vo.RecordVO;
import com.qfedu.yanglao20admin.visit.vo.ReturnVisitVO;

import java.math.BigDecimal;
import java.util.List;

/**
 * @author yujie
 * @data 2023/5/4 19:58
 */
public interface ReturnVisitDao extends BaseMapper<ReturnVisit> {

    /**
     * 分页查询服务回访信息
     *
     * @param param 分页信息
     * @return 服务回访信息
     */
    List<ReturnVisitVO> selectList(ReturnVisitParam param);

    /**
     * 修改回访信息
     *
     * @param param
     */
    void updateVisit(VisitFlagParam param);

    /**
     * 根据 id 查询回访记录信息
     *
     * @param id
     * @return 回访记录信息
     */
    RecordVO selectRecordById(Integer id);

    /**
     * 统计订单数
     *
     * @return
     */
    Integer selectCount();

    /**
     * 统计回访数
     *
     * @return
     */
    Integer selectCountByVisitFlag();

    /**
     * 计算满意度
     *
     * @return
     */
    BigDecimal selectAvg();
}
